package cbfg.rvadapter.selection

import cbfg.rvadapter.RVAdapter

class NoSelectionDelegate<T : Any> : ISelectionDelegate<T> {
    override fun setup(adapter: RVAdapter<T>, mutableItems: MutableList<T>) {}
    override fun getSelections(): Collection<T> = emptyList()
    override val isSelectable: Boolean = false
    override fun enableSelectable(selectable: Boolean, flags: Int) {}
    override fun selectAll(clazz: Class<*>) {}
    override fun selectAll() {}
    override fun selectAt(index: Int) {}
    override fun selectRange(fromIndex: Int, toIndex: Int) {}
    override fun deselectAt(index: Int, needNotify: Boolean) {}
    override fun deselectAll(clazz: Class<*>?, range: IntRange?, needNotify: Boolean) {}
    override fun toggleSelect(item: T, index: Int) {}
    override fun deselectAll(list: Collection<T>, range: IntRange?, needNotify: Boolean) {}
    override fun deselect(item: T, needNotify: Boolean) {}
    override fun selectAll(list: Collection<T>, range: IntRange?) {}
    override fun isSelected(item: T): Boolean = false
}